using System;
using System.Collections.Generic;
using System.Text;

namespace ITAP.ShprossesBuilder.Manipulation
{
    public interface ICommand : ICloneable
    {
        void StartExecute();
        void Execute();
        void EndExecute();
        bool CanUndo { get; }     
        bool Undo(ModelControl modelControl);
        bool Redo(ModelControl modelControl);
        bool IsNeedModelUpdate { get; }
        //bool StartUpdateVisitors { get; }
        //bool EndUpdateVisitors { get; }
        string Name { get; }
        bool Enabled { get; set; }
        bool IsNeedVisitorsUpdate { get; }
    }
}
